草庐IT

c++ - WinAPI DestroyWindow 不工作

全部标签

windows - 批处理文件抛出错误但是当每个命令在命令行中单独运行时它工作正常

我的批处理文件在运行时抛出错误,但是当我在命令行中手动运行命令时,我没有得到任何错误。这是批处理文件“test.bat”。echo"test"cd"c:\packages"pausefor/Rc:\packages%Fin(*.msi)doset/Aservername=%~nxFpauseecho%servername%pause我收到此错误-“此时未预料到~nxF”。我从https://stackoverflow.com/a/1100466/1105556得到了示例代码我只是尝试在c:\packages中获取文件名并将值存储在“servername”变量中。文件夹中只有一个文件(.

c - 在 win32/C/C++ 中共享内存和 IPC 的最快进程技术

我正在编写一个导出标准化接口(interface)(VST)并由外部应用程序托管的实时库。库必须发布一个表,该表可以被同一进程中的任何线程查看(如果它知道在哪里查看)——明确地说,这个表必须可以被进程空间中的所有dll查看——如果他们知道在哪里查看看。访问表必须很快。虚拟内存似乎有点矫枉过正,我考虑过使用窗口句柄(现在仍然可以)来消息泵,但我更喜欢一种更快的方法,如果有的话。此外,PE中的共享数据段是我希望尽可能避免的。我想我几乎宁愿使用窗口句柄。我目前不关心同步,事后我可以处理。我只是想要一些关于在进程空间内发布表的最快技术的建议。 最佳答案

c++ - MS 链接从 gnu make 失败,但从 cmd 行工作

最近我的gnumakefile停止链接我的C++项目。我做了一些改变。我已经复制了链接行并从批处理文件中运行它。它构建良好。但是当我运行make时,同一行奇怪地失败了。它给出的错误是:LINK:fatalerrorLNK1181:cannotopeninputfile'user32.lib'这一定是个误会,因为在同一个命令行提示符下,运行链接命令会成功。我开始怀疑GNUmake。这曾经在make中工作,但我对makefile进行了一些添加和更改以使其在Linux上构建,这似乎引入了问题。我正在使用:GNUMake3.80MSVisualC++Linker10.00.40219.01在W

c - C语言错误C2059和C2061

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:WhydoesVS2010givesyntaxerrorswhensyntaxiscorrect?我正在尝试使用VisualStudio2010用C语言开发一种Windows32服务。我创建了一个新项目,并插入了.c文件:主程序服务.c杂项我还有两个头文件:我的错误.h我的.h这是我的代码(请注意,这只是一个草稿)。主.c:#include#include#include#include"stdafx.h"#include"my.h"#include"myerrors.h"staticintparse_arg

c - WriteFile 与 IO 完成端口问题

我有这段代码,基本上使用IO完成端口将文件写入5次。如您所料,它的效果不是很好。问题是我希望将“hello”写入文件5次,但最终总是只写入一个“hello”。我很困惑,因为该程序打印了5次“写入5个字节”,所以我认为写入完成正常。有人能看出这有什么问题吗?#include#include#defineIOCP_NOMORE3#defineIOCP_WRITE1HANDLEhWriteIoCp;typedefstruct_OVERLAPIOINFO{OVERLAPPEDoverlapped;HANDLEhFile;}OVERLAPIOINFO;HANDLECreateNewComplet

c - 从 C 中的另一个程序执行一个程序

我正在尝试从另一个程序启动一个程序。下面是代码图:1#include#include#include#includeintmain(){printf("BeforeExecution\n");system("c:\\RasmiPersonal\\PERSONAL\\C\\CodeBlock\\C_Test\\bin\\Debug\\C_Test.exe");printf("\nAfterExecution\n");return0;}在c:\RasmiPersonal\PERSONAL\C\CodeBlock\C_Test\bin\Debug\C_Test项目中包含的代码是图2:#inc

c++ - Visual C++ 速成版

我正在使用VisualC++速成版。我在其中有以下查询..1)我可以分发从VC++速成版获得的可执行文件用于商业目的吗?2)如何使用VisualC++速成版获取32位和64位架构的通用可执行文件?我的另一个疑问是..如何使用“Mingw”为32位和64位架构生成通用可执行文件。谢谢。 最佳答案 是的,使用VisualStudio速成版构建的应用程序没有许可限制。只需构建一个32位可执行文件。它将在64位Windows上正常工作,因为它将在WOW64子系统下运行。同样的事情适用于其他WindowsC++编译器,例如MinGW。如果你真

C++:关于加载DLL和调用函数的一件小事

我一直在寻找一些dll或类来获取客户端的硬件信息,终于找到了:http://www.soft.tahionic.com/download-hdd_id/index.html谁能告诉我如何像下面那样调用函数?我在C中使用了这段代码,它可以工作。现在我无法将其转换为C++。char*(__stdcall*GetIDESerialNumber)(BYTE);HINSTANCEDllInst=NULL;if(DllInst==NULL)DllInst=LoadLibrary("hardwareid.dll");if(DllInst){GetIDESerialNumber=(char*(__st

c - 如何查看当前用户是否有管理权限

我可以使用什么WindowsAPI函数来检查运行我的应用程序的当前用户是否具有管理权限?这是我的操作系统详细信息:WINDOWSXP、VISTA和WINDOWS7使用语言:C 最佳答案 即使用户拥有管理权限,也并不意味着您的程序拥有-它需要被提升。这可以由用户明确要求以管理员身份运行它来完成,但通常是由程序本身通过嵌入到可执行文件中的list来请求的。一旦list要求权限,它就不是可选的-在用户批准并根据需要提供密码之前,程序不会运行。 关于c-如何查看当前用户是否有管理权限,我们在St

c++ - UTF-8 到宽字符转换

#ifndefUNICODE#defineUNICODE#endif#include#include#includeusingnamespacestd;intmain(){FILE*resFile;charmultiByteStr[256];ifstreamoFile;FILE*exampleFile;TCHARbuffer[256];system("chcp65001");resFile=_wfopen(L"foo",L"w,ccs=UTF-8");fwprintf(resFile,L"%s",L"C:\\exsistingFolder\\zażółćgęśłąjaźń☺☻♥♦•ć.